using Godot;
using RPG01.Scripts.Character.Player;

namespace RPG01.Scripts.SateMachine;

public class State
{
    protected Player player;
    protected StateMachine stateMachine;

    protected double duration;

    protected State(Player player, StateMachine stateMachine)
    {
        this.player = player;
        this.stateMachine = stateMachine;
    }

    public virtual void Enter()
    {
        duration = 0.0f;
        GD.Print($"进入状态： {GetType().Name}");
    }

    public virtual void Process(double delta)
    {
        duration += delta;
    }
    
    public virtual void PhysicsProcess(double delta)
    {
    }

    public virtual void Exit()
    {
        GD.Print($"退出状态： {GetType().Name}");
    }
}